Data communication with embedded pilot information for timely channel estimation

ABSTRACT

Pilot data and data-bearer data are formed to be mutually orthogonal and in each other&#39;s null-space. Data to be transmitted is first modulated with the data-bearer matrix and then pilot data is added thereto. The pilot data may be added to each modulated symbol, thereby increasing significantly the density of pilot information available at the receiver for channel state estimation. When pilot data is added across an entire transmitted block of data, data detection performance is improved for even fast fading Rayleigh fading channels.

RELATED APPLICATION DATA

This Application is based on Provisional Patent Application Ser. No. 60/692,462, filed on 21 Jun. 2005.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The invention described herein is related to data communication. More specifically, the invention is related to embedding pilot information into data at a transmitter for obtaining channel state information at a receiver.

2. Description of the Prior Art

Multiple-input multiple-output (MIMO) communication systems beneficially provide high capacity data communication with greater reliability than their single channel counterparts. Space-time (ST) coding has engendered transmit diversity so as to significantly improve the bit error rate (BER) of data transmission without an increase in transmission power. However, a major challenge in realizing such systems lies in providing the coherent detector with channel state information, which is a measure of the effects of the channel on the propagation of the signal. Typically, channel state information is estimated from a known signal transmitted through the channel for such purpose, where the known signal is commonly referred to as a training signal or pilot signal. Training signal techniques are widely applicable and are desirable when low computational complexity is inherent to their implementations.

Common pilot-aided channel estimation techniques for single-input single-output (SISO) and MIMO systems include the pilot symbol assisted modulation (PSAM) technique and the pilot-embedding technique. In PSAM, a pilot signal is time-multiplexed into the transmit data stream, which is then extracted at the receiver and used to ascertain the channel state information. Interpolation of multiple channel estimates is applied over a certain time period to improve accuracy. However, the signal from which channel information is derived is sparsely transmitted, which results in poor state tracking of the channel with respect to time. Unfortunately for these PSAM systems, increasing the time-density of the pilot signal consumes bandwidth otherwise used for real data and thus penalizes the system's efficiency.

Pilot-embedding, also referred to as the pilot-superimposed technique, adds a sequence of pilot signals directly to the data stream. Channel estimation and data detection are accomplished at the receiver through a soft-decoding procedure, such as the Viterbi algorithm. This technique achieves better bandwidth efficiency over PSAM since no time slots are sacrificed for pilot signal use. The pilot-embedding technique does, however, involve higher computational costs in the decoder and a longer delay in the channel estimation process.

The need exists in the field of data communication for channel state information acquisition, which is computationally affordable and able to track channels states in fast-fading channels.

SUMMARY OF THE INVENTION

In one aspect of the invention, a method is provided for data communication in which data symbols are first provided at a transmitter. Pilot data are added to each of the data symbols to form pilot-embedded data symbols, at least one of which is transmitted from a transmitting antenna defining one end of a data channel. At least one of the pilot-embedded data symbols is received at a receiving antenna defining an opposite end of the data channel. At least one channel state coefficient indicative of a charateristic of the data channel is estimated from the received pilot-embedded data symbols. The data symbols are recovered from the received pilot-embedded data symbols using the estimated channel state coefficient.

In another aspect of the invention, a method for data communication is provided which forms a block codeword from a sequence of data symbols. The codeword is modulated with a plurality of data bearing coefficients and a value from a plurality of pilot values is added thereto to form a pilot-embedded codeword. The pilot-embedded codeword is transmitted and subsequently received at a receiver. At least one channel state coefficient indicative of a characteristic of a corresponding data channel is estimated from the received codeword and the sequence of data symbols is recovered from the received pilot-embedded codeword using the estimated channel state coefficient.

In yet another aspect of the invention, a system for data communication is provided which includes a data encoder encoding data received at an input thereof into data symbols produced at an output thereof. A pilot embedder is coupled to the data encoder and adds pilot data to the data symbols to produce pilot-embedded data symbols at an output thereof. The system includes a transmitter coupled to the pilot embedder at an input thereof for transmitting the pilot-embedded data symbols over a plurality of time slots such that the pilot data is transmitted in each time slot. A receiver is coupled to the transmitter via at least one data channel and receives therethrough the pilot-embedded data symbols as modified by a characteristic of the corresponding data channel. A channel estimator is coupled to the receiver and estimates from the pilot data added to each of the data symbols the characteristic of the corresponding data channel for each of the pilot-embedded symbols received. A data detector is coupled to the channel estimator and recovers the data symbols from the pilot-embedded symbols in accordance with the estimated characteristic to produce at an output thereof estimated data symbols. A data decoder coupled to the data detector decodes the estimated data symbols in a manner complementary to the data encoder to reproduce the data at the receiver.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic block diagram of an exemplary system implementing the present invention;

FIG. 2 is a block diagram illustrating an exemplary block coding structure of the present invention;

FIG. 3A is a flow diagram illustrating fundamental functional steps in a transmitter of embodiments of the invention;

FIG. 3B is a flow diagram illustrating fundamental functional steps in a receiver of embodiments of the invention;

FIG. 4 is a graph comparing system performance in terms of mean-square-error (MSE) in a quasi-static flat Rayleigh fading channel of the invention and of the prior art;

FIG. 5 is a graph of system performance in terms of bit error rate (BER) in a quasi-static flat Rayleigh fading channel for different configurations consistent with the invention;

FIG. 6 is a graph comparing system performance in a quasi-static flat Rayleigh fading channel, when power is allocated to data and pilot information in accordance with aspects of the present invention, to a power allocation strategy of the prior art;

FIG. 7 is a graph of normalized power allocated to data and pilot portions in a power allocation scheme consistent with aspects of the present invention;

FIG. 8 is a graph of MSE performance of an exemplary single receiver antenna system in a nonquasi-static flat Rayleigh fading channel using pilot information provided in accordance with the present invention;

FIG. 9 is a graph of BER performance of an exemplary single receiver antenna system in a nonquasi-static flat Rayleigh fading channel and different embedder/detector configurations consistent with the present invention;

FIG. 10 is a graph of MSE performance of an exemplary dual antenna receiver system in a nonquasi-static flat Rayleigh fading channel using pilot information provided in accordance with the present invention; and

FIG. 11 is a graph of BER performance of an exemplary dual antenna receiver system in a nonquasi-static flat Rayleigh fading channel and different embedder/detector configurations consistent with the invention.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

The present invention simplifies channel estimation and data detection processes by taking advantage of the null-space and orthogonality principles of the data-bearing and pilot structure, as will be succinctly described below by way of certain underlying mathematical models. Exemplary system configurations will also be described that demonstrate implementations of the invention practicable from aspects derived from the models. It is to be noted that while the invention will be described herein primarily with reference to a MIMO embodiment thereof, other embodiments, including SISO embodiments, are within the intended scope of the invention.

In certain MIMO embodiments of the invention, a data-bearer matrix is used for projecting an ST data codeword matrix onto the orthogonal subspace of a pilot matrix. By virtue of the null-space and orthogonality properties, a block of the data matrix subjected to the invention is added into a block of pilot matrix, where the pilot and data matrices are mutually orthogonal. Improvement in channel estimation results from the provision of pilot information in every transmitted block without substantial penalty in computational complexity.

Fundamental aspects of the invention are now described in accordance with a MIMO channel and system model. The exemplary MIMO system is illustrated in FIG. 1 and includes L_(t) transmit antennas at a transmitter 100 and L_(r) receive antennas at a receiver 160. Generally, for a given block index t, an ST codeword U(t) is characterized by a matrix of L_(t)×M symbols transmitted across the L_(t), transmit antennas over M time slots. The received symbol matrix Y(t) at the receiver front-end can be expressed as: Y(t)=H(t)U(t)+N(t),  (1) where H(t) is the L_(r)×L_(t) channel coefficient matrix and the L_(r)×M noise matrix N(t) is assumed to be complex white Gaussian distributed with zero mean and variance σ²/2(I_((L) _(r) _(M×L) _(t) _(M))) per real dimension. The elements of H(t) are assumed to be independent complex Gaussian random variables with zero mean and variance of 0.5 per real dimension, or, equivalently, an independent flat Rayleigh fading channel is assumed. Unlike many systems of the prior art, the present invention is not limited to environments where quasi-static flat Rayleigh fading channels are presumed, but extends to nonquasi-static flat Rayleigh fading channels, where H(t) changes according to processes whose dominant frequency is much faster than M⁻¹. Beneficial features of the invention provide information at the receiver to track the state of the channel even if the channel coefficient matrix H(t) is not constant over each symbol block.

Without loss of generality, a modulated data matrix Z(t)ε

^(L) ^(t) ^(×M) is defined as: Z(t)=D(t)A,  (2) where D(t)ε

^(L) ^(t) ^(×N) is the ST codeword data matrix, Aε

^(N×M) is the data-bearer matrix, and N is the number of data time slots used in each ST codeword. In certain embodiments of the invention, the ST data matrix D(t) is formed to maintain the energy constraint E[∥D(t)∥²]=L_(t), with ∥·∥ being the Frobenius norm. A pilot-embedded symbol matrix of the present invention may then be expressed as: U(t)=Z(t)+P=D(t)A+P,  (3) where Pε

^(L) ^(t) ^(×M) is the pilot matrix.

Referring to FIG. 2, there is shown an exemplary pilot-embedded ST codeword structure 200 in accordance with the present invention. As is shown in the Figure, U(t) includes two main parts: modulated data sequences {Z(t)}_(i) and pilot sequences {P}_(i), where i is the row index i=1, . . . , L_(t). The data sequences {Z(t)}_(i) include data-bearing symbols 210 and the pilot sequences {P}_(i) include pilot symbols 220. As is clear from FIG. 2, the present invention provides pilot information in every time slot and in every spatial stream of the pilot-embedded ST symbol block 200. The pilot-embedded ST symbol block 200 is transmitted into the MIMO channel via transmit antennas 120 a-120L_(t) at block time t=┌(kM+n)/M┐, where kε[0,∞)εI, nε[0,M−1)εI and ┌·┐ returns the largest integer no greater than its argument. Then, substituting Eq. (3) into Eq. (1) reveals that the received symbol matrix Y(t) is: Y(t)=H(t)(D(t)A+P)+N(t)  (4)

In accordance with the invention, the data bearer matrix A and the pilot matrix P are chosen to satisfy the following: AP ^(T)=0ε

^(N×L) ^(t)   (5) PA ^(T)=0ε

^(L) ^(t) ^(×N)  (6) AA ^(T) =αIε ^(N×N)  (7) PP ^(T) =αIε ^(L) ^(t) ^(×L) ^(t) ,  (8) where β is a real-valued data power factor for controlling the data-part power and α is a real-valued pilot power factor for controlling the pilot-part power. The matrices 0 and I are the zero matrix and the identity matrix, respectively. The present invention exploits the null-space property of Eqs. (5) and (6) and the orthogonality properties of Eqs. (7) and (8) to enable the embedding of the pilot symbols onto every symbol in the transmitted codeword block in such a manner as to be efficiently recovered at the receiver.

In mathematical terms, the data-bearer matrix A projects the ST data matrix D(t) onto the orthogonal space of the pilot matrix P. Eqs. (7) and (8) imply that Rank(A)=N and Rank(P)=L_(t), where Rank(•) returns the rank of its matrix argument. To satisfy the null-space requirement of Eqs. (5) and (6), the minimum number of columns in A and P must be equal to the sum of the rank of A and P. Consequently, the number of time slots M of the pilot-embedded ST symbol codeword U(t) must satisfy the inequality: Rank(A)+Rank(P)≦M.  (9)

The present invention establishes the matrices A and P to fulfill the requirements of Eqs. (5)-(8) and applies the symbol patterns formed by the matrices as shown in FIG. 3A. The incoming data stream is encoded at block 310, where error coding is applied, constellation symbols are selected and any block coding is performed. The encoded data is then modulated by the pattern defined by data-bearer matrix A, as indicated at block 315. Such modulation may be performed, for example, by matrix multiplication in a digital signal processor (DSP). Process flow is transferred to block 320, where the pilot data pattern defined by the matrix P is added to the modulated data. The addition of the pilot symbols may be performed by, for example, matrix addition in a DSP. The pilot-embedded data are then transmitted into the channel, as indicated at block 325.

Matrices A and P may be formed in a number of ways to meet the above criteria with varying pilot information density resulting thereby. For example, in a Time-Multiplexing (TM) based system, the structures of the data-bearer and pilot matrices may be: A=√{square root over (β)}[0_((N×L) _(t) ₎ ;I _((N×N))], P=√{square root over (α)}[ I _((L) _(t) _(×L) _(t) ₎;0_((L) _(t) _(×N)) ], M=N+L _(t).  (10) In this embodiment, the pilot signal is based on the L_(t)×L_(t) identity matrix and is multiplexed into the channel separate from the data as modulated by A. The PSAM system previously described is subsumed into this category of system.

In ST-Block-Code (STBC) based systems, the matrices may be: A=√{square root over (β)}[0_((N×τ)) ;I _((N×N))], P=√{square root over (α)}[STBC _((L) _(t) _(×τ));0_((L) _(t) _(×N)) ], M=N+τ,  (11) where τ is the number of time slots used for transmitting one ST block code of pilot information. The primary difference between this and the TM-based structure is that it employs a normalized known ST block code structure for the pilot block instead of the identity matrix, but still multiplexes the pilot symbols into the data.

In a Code-Multiplexing (CM) based system, exemplary matrices are: A=√{square root over (β)}WH[1:N] _((N×M)), P=√{square root over (α)}WH[N+1:M] _((L) _(t) _(×M)) , M=N+L _(t) ,  (12) where WH[x:y] denotes a sub-matrix created by splitting the M×M normalized Walsh-Hadamard matrix starting with the x^(th) row and ending with the y^(th) row. The pilot information using these matrices is distributed evenly over the transmitted ST symbol block. Certain embodiments of the invention implement pilot embedding processes in accordance with the CM-based matrices to achieve channel estimation which is superior to the other two systems described.

At the receiver end of the channel, the recovery of the original data is achieved through the fundamental method steps of FIG. 3B. The pilot-embedded data are received, as indicated at block 330. Flow is transferred to block 335 where estimation of the channel state information proceeds on the received signal modeled by Eq. (4). Described mathematically, the process begins by post-multiplying the received symbol matrix Y(t) by the transpose of the pilot matrix p^(T). From the null-space and orthogonality properties of Eqs. (5) and (8) and dividing the result by α, $\begin{matrix} {\frac{{Y(t)}P^{T}}{\alpha} = {{H(t)} + {\frac{{N(t)}P^{T}}{\alpha}.}}} & (13) \end{matrix}$ Defining ${{Y_{1}(t)} = {{\frac{{Y(t)}P^{T}}{\alpha}\quad{and}\quad{N_{1}(t)}} = \frac{{N(t)}P^{T}}{\alpha}}},$ and with y(t)

vec(Y₁(t)), n(t)

vec(N₁(t)), h(t)

vec(H(t)), where vec(•) concatenates constituent rows or columns of its matrix argument, the received symbol matrix may be rewritten as a vector: y(t)=h(t)+n(t).  (14) Using the property that, vec(ABC)=(C ^(T) {circle around (×)}A)vec(B),  (15) where {circle around (×)} is the Kronecker product of matrices, the noise term in Eq. (14) is: $\begin{matrix} {{{n(t)} = {\frac{1}{\alpha}\left( {I \otimes {N(t)}} \right){{vec}\left( P^{T} \right)}}},} & (16) \end{matrix}$ where the size of I{circle around (×)}N (t) is L_(t)L_(r)×L_(t)M. In the presence of white Gaussian-distributed N(t), the mean of the pilot-projected noise vector n(t) is, $\begin{matrix} {\mu_{n{(t)}} = {{\frac{1}{\alpha}{E\left\lbrack {\left( {I \otimes {N(t)}} \right){{vec}\left( P^{T} \right)}} \right\rbrack}} = 0_{({L_{t}L_{r} \times 1})}}} & (17) \end{matrix}$ and the covariance is given by, $\begin{matrix} {{V_{n{(t)}} = {{\frac{1}{\alpha^{2}}{E\left\lbrack {\left( {\left( {I \otimes {N(t)}} \right){{vec}\left( P^{T} \right)}} \right)\left( {\left( {I \otimes {N(t)}} \right){{vec}\left( P^{T} \right)}} \right)^{H}} \right\rbrack}} = {\frac{\sigma^{2}}{2\alpha^{2}}{{Diag}\left( B_{i} \right)}}}},{B_{i} = {\sum\limits_{j = 1}^{M}{{P_{i,j}}^{2}I_{({L_{r} \times L_{r}})}}}},{i\quad \in \left\{ {1,\quad\ldots\quad,L_{t}} \right\}},{{per}\quad{real}\quad{dimension}},} & (18) \end{matrix}$ where P_(i,j) is the i^(th) row j^(th) column element of the pilot matrix P, Diag(•) returns a diagonal matrix by concatenating the submatrices of its argument, and superscripted H indicates the complex conjugate transpose of the argument matrix. Using Eq. (8), it is observed that Σ_(j=1) ^(M)|P_(i,j)|²=α, ∀i. Thus, the covariance matrix can be rewritten to, $\begin{matrix} {{V_{n{(t)}} = {\frac{\sigma^{2}}{2\alpha}I_{({L_{t}L_{r} \times L_{t}L_{r}})}}},{{per}\quad{real}\quad{{dimension}.}}} & (19) \end{matrix}$ The pilot-projected noise vector n(t) is a complex white Gaussian vector and a log-likelihood function can be formed: $\begin{matrix} {{{\ln\left( {p\left( {{y(t)}\text{❘}{h(t)}} \right)} \right)} = {{\ln\left( \frac{1}{\pi^{L}{\det\left( V_{n{(t)}} \right)}} \right)} - {\left( {{y(t)} - {h(t)}} \right)^{H}{V_{n{(t)}}^{- 1}\left( {{y(t)} - {h(t)}} \right)}}}},} & (20) \end{matrix}$ where L=L_(t)L_(r) and det(•) returns the determinant of its argument.

Eq. (20) serves as a basis for channel estimation, such as through a unconstrained Maximum-Likelihood (ML) channel estimator, which maximizes the log-likelihood function, $\begin{matrix} {{\hat{h}(t)} = {\max\limits_{h{(t)}}{\left\{ {\ln\left( {p\left( {{y(t)}\text{❘}{h(t)}} \right)} \right)} \right\}.}}} & (21) \end{matrix}$ Differentiating Eq. (20) and equating the result to zero results in, ĥ(t)=y(t) or Ĥ(t)=Y ₁(t),  (22) which indicates that the ML estimator is the pilot-projected received vector y(t) (or matrix Y₁(t)) itself.

To improve the estimation, certain embodiments of the invention employ an L-tap Linear Minimum Mean-Squared Error (LMMSE) channel estimator. The L-tap LMMSE channel estimator is given mathematically by, h _(j,i) ^(LMMSE)(t)=w _(j,i) ^(H) ĥ _(j,i) ^(L)(t),  (23) where h_(j,i) ^(LMMSE)(t) denotes the j^(th) row i^(th) column element of the LMMSE-estimated channel matrix, w_(j,i)=[w_(j,i)(0) . . . w_(j,i)(L−1)]^(T) denotes the L-tap finite impulse response (FIR) linear filter's weight vector, and ĥ_(j,i) ^(L)(t)=[ĥ_(j,i)(t) . . . ĥ_(j,i)(t−L+1)]^(T) denotes the L-element input vector constructed from the j^(th) row i^(th) column element of the ML-estimated channel matrix in Eq. (22) taking values in the time interval [t−L+1,t]. The optimization criterion, assuming wide-sense stationary channels, for the L-tap LMMSE estimator is, $\begin{matrix} {{{J\left( w_{j,i} \right)} = {\arg\quad{\min\limits_{w_{j,i}}{E\left\lbrack {{{h_{j,i}(t)} - {w_{j,i}^{H}{{\hat{h}}_{j,i}^{L}(t)}}}}^{2} \right\rbrack}}}},} & (24) \end{matrix}$ where h_(j,i)(t) denotes the j^(th) row i^(th) column element of the true channel matrix H(t) in Eq. (1), i.e., the channel state information if perfect knowledge of such were obtainable.

The optimal LMMSE weight vector w_(j,i) ^(opt) is given by, $\begin{matrix} {w_{j,i}^{opt} = {R_{{\hat{h}}_{j,{i{(t)}}}^{L}}^{- 1}p_{{\hat{h}}_{j,{i{(t)}}}^{L}}}} & (25) \end{matrix}$ where R_(ĥ) _(j,i) _(L) _((t))=E[ĥ_(j,i) ^(L)(t)ĥ_(j,i) ^(HL)(t)] and p_(ĥ) _(j,i) _(L) _((t))=E[h_(j,i)*(t)ĥ_(j,i) ^(L)(t)]. and Taking Eqs, (14), (19) and (22) and considering that the channel and noise coefficients are uncorrelated, the autocorrelation matrix R_(ĥ) _(j,i) _(L) _((t)) may be simplified to, $\begin{matrix} {{R_{{\hat{h}}_{j,{i{(t)}}}^{L}} = {R_{h_{j,{i{(t)}}}^{L}} + {\frac{\sigma^{2}}{\alpha}I_{L \times L}}}},} & (26) \end{matrix}$ where R_(h) _(j,i) _(L) _((t))=E[h_(j,i) ^(L)(t)h_(j,i) ^(HL)(t)] and h_(j,i) ^(L)(t)=[h_(j,i)(t) . . . h_(j,i)(t−L+1)]^(T). Similarly, the cross-correlation vector P_(ĥ) _(j,i) _(L) _((t)) can be simplified to, p _(ĥ) _(j,i) _(L) _((t)) =E[h _(j,i)*(t)h _(j,i) ^(L)(t)]=p _(h) _(j,i) _(L) _((t)).  (27) Substituting Eqs. (26) and (27) into Eq. (25), and then substituting the result into Eq. (23), the LMMSE channel estimator can be written as: $\begin{matrix} {{h_{j,i}^{LMMSE}(t)} = {\left\lbrack {\left( {R_{h_{j,{i{(t)}}}^{L}} + {\frac{\sigma^{2}}{\alpha}I_{L \times L}}} \right)^{- 1}p_{h_{j,{i{(t)}}}^{L}}} \right\rbrack^{H}{{\hat{h}}_{j,i}^{L}(t)}}} & (28) \end{matrix}$ The channel estimation process 335, as described through its underlying mathematics above, may be achieved through programmed instruction sequences on a DSP.

As is shown in FIG. 3B, once the channel estimates have been obtained, flow is transferred to block 340, where the data detection process is executed. The data part of the received signal is extracted by post-multiplying the received symbol matrix Y(t) by the transpose of the data bearer matrix A. Using the null-space and orthogonality properties of Eqs. (6) and (7), and dividing by β, the data-bearer projected received symbol matrix is given by, $\begin{matrix} {\frac{{Y(t)}A^{T}}{\beta} = {{{H(t)}{D(t)}} + {\frac{{N(t)}A^{T}}{\beta}.}}} & (29) \end{matrix}$ Defining ${{Y_{2}(t)} = {{\frac{{Y(t)}A^{T}}{\beta}\quad{and}\quad{N_{2}(t)}} = \frac{{N(t)}A^{T}}{\beta}}},$ Eq. (29) may be rewritten as, Y ₂(t)=H(t)D(t)+N ₂(t).  (30) Now, defining n′(t)=vec(N₂ (t)), observing from Eq. (7) that ${{\sum_{j = 1}^{M}{A_{i,j}}^{2}} = \beta},{\forall i}$ and following from the preceding analysis of P, the statistics of the data-bearer projected noise vector n′(t) are, μ_(n′(t))=0_((L) _(r) _(N×1)),  (31) $\begin{matrix} {{V_{n^{\prime}{(t)}} = {\frac{\sigma^{2}}{2\beta}I_{({L_{r}N \times L_{r}N})}\quad{per}\quad{real}\quad{dimension}}},} & (32) \end{matrix}$ where μ_(n′(t)) and V_(n′(t)) are the mean vector and covariance matrix of the data-bearer projected noise vector n′(t), respectively.

In certain embodiments of the invention, a maximum likelihood receiver is employed for detecting the transmitted data matrix D(t) by using the estimated channel coefficient matrix Ĥ(t) as the channel state information. Since n′(t) is i.i.d. white Gaussian, a suitable maximum likelihood receiver computes a decision metric and selects a codeword that minimizes the decision metric, such as. $\begin{matrix} {{\left\{ \hat{d_{i}} \right\} = {\min\limits_{\{ d_{i}\}}\left\{ {\sum\limits_{t = 1}^{N}{\sum\limits_{j = 1}^{L_{r}}{{y_{t}^{j} - {\sum\limits_{i = 1}^{L_{r}}{h_{j,i}d_{t}^{i}}}}}^{2}}} \right\}}},{\forall d_{t}^{i}},{i \in \left\{ {1,\quad\ldots\quad,L_{t}} \right\}},{t \in \left\{ {1,\quad\ldots\quad,N} \right\}},} & (33) \end{matrix}$ where y_(t) ^(j) denotes the j^(th) row t^(th) column element of the data-bearer projected received symbol matrix Y₂(t), ĥ_(j,i) denotes the j^(th) row i^(th) column of the estimated channel matrix Ĥ(t), and {circumflex over (d)}_(t) ^(i) denotes the i^(th) row t^(th) column of the estimated ST data matrix {circumflex over (D)}(t). The ML receiver may be implemented through programmed instruction steps on a DSP.

Once the data estimates have been acquired, the process of FIG. 3B proceeds to block 345, where the data estimates are decoded in a manner complementary to that at the receiver, thereby recovering the original data stream.

Referring once again to FIG. 1, the exemplary system configuration is now viewed in light of the descriptions above. The system of FIG. 1 is intended to illustrate the fundamental functional blocks of a data communication system consistent with the present invention. Certain of the functions illustrated may be carried out on respective DSPs at the receiver and transmitter ends or may be implemented in discrete single functional modules. Moreover, although the system is illustrated as a MIMO system, the number of antennas at the receiver 160 and transmitter 100 may include the single antenna case at both locations to implement an SISO system operating consistent with the present invention.

As is illustrated in the Figure, the input sequence is provided at the transmitter 1100 to block coder 105, which encodes the incoming data into a block codeword D(t). Such coding may include forward error correction coding, constellation symbol selection and ST block coding. The codeword D(t) is provided to pilot embedder 110, where the codeword is modulated by a data pattern consistent with matrix A and the pilot symbols are added in accordance with the embedding scheme chosen from, for example, the matrix structures described above. Preferably, the system will embed the pilot information in each symbol of the modulated codeword, such as through the CM based system described above. The pilot-embedded codeword is then transmitted into the MIMO channel 170 by a suitable RF transmitter and antennas 120 a-120L_(t).

At the receiver 160, the codeword is received by RF module 140 and is provided to channel estimator 145. The channel estimator, which is provided with knowledge of the matrix P, such as through storing a copy thereof in a memory device, is preferably a LMMSE estimator to provide the estimated channel state information Ĥ(t) to ascertain the characteristics of the channel. The estimated channel state information and the received codeword are provided to data detector 150, which determines the estimated codeword {circumflex over (D)}(t) from the estimated channel state information and a copy of the matrix A. The data detector 150 maintains a copy of the data-bearer matrix A, such as by storing such in a memory device. The estimated codeword is decoded by decoder 155 in a manner complementary to the coding operation at the transmitter 100. The decoder then produces the recovered sequence. Numerical examples of the signal processing and performance are given below.

As was indicated above, the values α and β may be used to control power allocation to each of the data and pilot portions of the signal. It should be clear to the skilled artisan that performance of a data communication system is dependent on the power percentages of the data and pilot portions. Considering a MIMO system where the power of the pilot-embedded ST symbol matrix U(t) is constant, the block power allocated to U(t) normalized to the number of transmit antennas L_(t) can be expressed as, $\begin{matrix} \begin{matrix} {P_{s} = \frac{E\left\lbrack {{U(t)}}^{2} \right\rbrack}{L_{t}}} \\ {= {\frac{E\left\lbrack {{{D(t)}A}}^{2} \right\rbrack}{L_{t}} + \frac{E\left\lbrack {P}^{2} \right\rbrack}{L_{t}}}} \\ {= {P_{s}^{\prime} + P_{p}}} \\ {{= {\beta + \alpha}},} \end{matrix} & (34) \end{matrix}$ where p′_(s)=β is the normalized block power allocated to the data part and P_(p)=α is the normalized block power allocated to the pilot part.

To determine the optimal power allocation, a Probability of Error Upper Bound (PEUB) mismatch factor is defined as, $\begin{matrix} \begin{matrix} {\eta = {\ln\left( \frac{{P\left( d\longrightarrow e \right)}_{\hat{H}{(t)}}}{{P\left( d\longrightarrow e \right)}_{H{(t)}}} \right)}} \\ {= {L_{t}L_{r}{{\ln\left( \frac{P_{s}\left( {\frac{N}{\beta} + \frac{L_{t}}{\alpha}} \right)}{N\left( {1 + \frac{\sigma^{2}}{\alpha}} \right)} \right)}.}}} \end{matrix} & (35) \end{matrix}$ In Eq. (35), P(d→e)_(Ĥ(t)) is the Chernoff's upper bound of the probability of transmitting a codeword d

(d₁ ¹d₁ ² . . . d₁ ^(L) ^(t) . . . d_(N) ¹d_(N) ² . . . d_(N) ^(L) ^(t) )^(T) and deciding in favor of a different codeword e

(e₁ ¹e₁ ² . . . e₁ ^(L) ^(t) . . . e_(N) ¹e_(N) ² . . . e_(N) ^(L) ^(t) )^(T) at the ML receiver given the channel estimate Ĥ(t). Similarly, P(d→e)_(H(t)) is the Chernoff's upper bound of the probability of such a decision given perfect knowledge of the channel state information through H(t).

Minimizing the PEUB mismatch factor η with respect to the pilot-power factor α subject to the constraints of constant block power and acceptable MSE of the channel estimation optimizes the power allocation and is implemented as such in certain embodiments of the invention. Substituting β=P_(s)−α into Eq. (35), the minimization problem is given by, $\begin{matrix} {{\min\limits_{\alpha}\left( \frac{{\left( {N - L_{t}} \right)\alpha} + {P_{s}L_{t}}}{\left( {\alpha + \sigma^{2}} \right)\left( {P_{s} - \alpha} \right)} \right)},} & (36) \end{matrix}$ where MSE≦T with T being a predetermined acceptability threshold. Differentiating Eq. (36) and equating the result to zero provides the optimal pilot power factor, $\begin{matrix} {\alpha^{*} = \left\{ \begin{matrix} {\frac{P_{s} - \sigma^{2}}{2},} & {N = L_{t}} \\ {\frac{{P_{s}L_{t}} - \sqrt{P_{s}{N\left( {{P_{s}L_{t}} + {\sigma^{2}\left( {L_{t} - N} \right)}} \right)}}}{\left( {L_{t} - N} \right)},} & {N \neq L_{t}} \end{matrix} \right.} & (37) \end{matrix}$ where the MSE of the channel estimation must satisfy, $\begin{matrix} {{MSE} = {\frac{\sigma^{2}L_{t}L_{r}}{\alpha} \leq {T.}}} & (38) \end{matrix}$ The remaining amount of fixed power is then β=P_(s)−α*.

The optimum pilot power factor α* exists for N≠L_(t) if and only if the signal-to-noise ratio (SNR) is at least (N−L_(t)). For the case where N=L_(t) and the SNR satisfies, $\begin{matrix} {{{L_{t} + \frac{2L_{t}^{2}L_{r}}{T}} \leq {SNR} < \infty},} & (39) \end{matrix}$ the range of the optimum pilot power factor is given by, $\begin{matrix} {\frac{L_{t}L_{r}P_{s}}{T + {2L_{t}L_{r}}} \leq \alpha^{*} < {\frac{P_{s}}{2}.}} & (40) \end{matrix}$ It follows that for N=L_(t), $\begin{matrix} {\alpha^{*} = \left\{ {\begin{matrix} {\frac{L_{t}L_{r}P_{s}}{T + {2L_{t}L_{r}}},} & {{SNR} < {L_{t} + \frac{2L_{t}^{2}L_{r}}{T}}} \\ {\frac{P_{s} - \sigma^{2}}{2},} & {Otherwise} \end{matrix}.} \right.} & (41) \end{matrix}$

Certain aspects of the invention will now be demonstrated through numerical examples. An orthogonal ST block code is formed according to: $\begin{matrix} {{{D(t)}\begin{bmatrix} {s_{1}(t)} & {- s_{2}^{*}} & \frac{s_{3}^{*}(t)}{\sqrt{2}} & \frac{s_{3}^{*}(t)}{\sqrt{2}} \\ {s_{2}(t)} & {s_{1}^{*}(t)} & \frac{s_{3}^{*}(t)}{\sqrt{2}} & {- \frac{s_{3}^{*}(t)}{\sqrt{2}}} \\ \frac{s_{3}(t)}{\sqrt{2}} & \frac{s_{3}^{*}(t)}{\sqrt{2}} & \frac{{- {s_{1}(t)}} - {s_{1}^{*}(t)} + {s_{2}(t)} - {s_{2}^{*}(t)}}{2} & \frac{{s_{2}(t)} + {s_{2}^{*}(t)} + {s_{1}(t)} - {s_{1}^{*}(t)}}{2} \\ \frac{s_{3}(t)}{\sqrt{2}} & {- \frac{s_{3}^{*}(t)}{\sqrt{2}}} & \frac{{- {s_{2}(t)}} - {s_{2}^{*}(t)} + {s_{1}(t)} - {s_{1}^{*}(t)}}{2} & {- \frac{{s_{1}(t)} + {s_{1}^{*}(t)} + {s_{2}(t)} - {s_{2}^{*}(t)}}{2}} \end{bmatrix}},} & (42) \end{matrix}$ where s_(i)(t), iε{1, . . . ,3} are the ST symbols corresponding to the chosen modulation constellation, e.g., 4-PSK (Phase-Shift Keying), 8-PSK. For comparison, a set of TM based matrices will be, $\begin{matrix} {{A_{TM} = {\sqrt{\beta}\begin{bmatrix} 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 \end{bmatrix}}},{P_{TM} = {\sqrt{\alpha}\begin{bmatrix} 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 \end{bmatrix}}},} & (43) \end{matrix}$ and a set of STBC based matrices will be, $\begin{matrix} {{A_{STBC} = {\sqrt{\beta}\begin{bmatrix} 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 \end{bmatrix}}},{P_{STBC} = {{\sqrt{\frac{\alpha}{3}}\begin{bmatrix} 1 & {- 1} & \frac{1}{\sqrt{2}} & \frac{1}{\sqrt{2}} & 0 & 0 & 0 & 0 \\ 1 & 1 & \frac{1}{\sqrt{2}} & {- \frac{1}{\sqrt{2}}} & 0 & 0 & 0 & 0 \\ \frac{1}{\sqrt{2}} & \frac{1}{\sqrt{2}} & {- 1} & 1 & 0 & 0 & 0 & 0 \\ \frac{1}{\sqrt{2}} & \frac{1}{\sqrt{2}} & {- 1} & {- 1} & 0 & 0 & 0 & 0 \end{bmatrix}}.}}} & (44) \end{matrix}$ The data-bearer and pilot matrices for the CM based system will be, $\begin{matrix} {{A_{CM} = {\sqrt{\frac{\beta}{8}}\begin{bmatrix} 1 & 1 & 1 & 1 & {- 1} & {- 1} & {- 1} & {- 1} \\ 1 & {- 1} & 1 & {- 1} & {- 1} & 1 & {- 1} & 1 \\ 1 & 1 & {- 1} & {- 1} & {- 1} & {- 1} & 1 & 1 \\ 1 & {- 1} & {- 1} & 1 & {- 1} & 1 & 1 & {- 1} \end{bmatrix}}},{P_{CM} = {{\sqrt{\frac{\alpha}{8}}\begin{bmatrix} 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 \\ 1 & {- 1} & 1 & {- 1} & 1 & {- 1} & 1 & {- 1} \\ 1 & 1 & {- 1} & {- 1} & 1 & 1 & {- 1} & {- 1} \\ 1 & {- 1} & {- 1} & 1 & 1 & {- 1} & {- 1} & 1 \end{bmatrix}}.}}} & (45) \end{matrix}$ The three different embedding structures derived from Eqs. (10)-(12), respectively, will be evaluated in both quasi-static and nonquasi-static flat Rayleigh fading channels. In the nonquasi-static scenarios, the performances of the pilot-embedded MIMO systems are demonstrated for channels of varying Doppler shift representing different mobility speeds of a moving receiver. The bit error rate (BER) and MSE will be used as a performance measure against ideal channel coefficients, i.e., where perfect channel state information is given. In the demonstrations, the perfectly known channel cases do not contain pilot information, i.e., the transmitted ST codeword U(t) is simply U(t)=D(t)A. Additionally, pilot-embedded MIMO systems are compared having power allocation in accordance with the optimal allocation described above and having power allocation of the prior art. In the demonstrations, the transmit rate and total transmit energy are the same for all schemes.

For all three data bearer and pilot structures, the noise term N(t) is established to be independent complex Gaussian random variables with zero mean and variance σ²/2 per real dimension. The normalized ST symbol block power P_(s) is one (1) W/ST symbol block. The number of time slots M is 8 time slots per ST symbol block and the number of transmit antennas L_(t) is four (4). The number of data time slots N=M−L_(t) is four (4) time slots/ST codeword symbol block. The modulation scheme is 4-PSK and the acceptable threshold of the MSE of the channel estimation T is set to 0.5. The number of LMMSE estimator taps is set to three (3).

In the quasi-static flat Rayleigh fading channel, the channel coefficients are taken from normalized time-varying channel modeled in accordance with that of “Multipath Interference”, Jakes, Jr., W. C., Microwave Mobile Communication, W. C. Jakes, Jr., Ed., Wiley, NY, pp. 67-68. The fast fading is simulated using fd*T_(s)=0.08, where fd is the Doppler shift and T_(s) is the symbol period.

FIG. 4 shows the MSEs of the channel estimation of the pilot-embedded MIMO system having optimal power allocation and that of the prior art with a single receive antenna and two receive antennas L_(r). It is to be observed from the Figure that the LMMSE channel estimator outperforms the simple ML estimator as shown by the MSE of both processes.

In FIG. 5, the BERs of the pilot-embedded MIMO system having optimal power allocation consistent with the present invention is demonstrated against the ideal MIMO system. Again, the cases of L_(r)=1 and L_(r)=2 are shown. It is to be observed that, at BER=10⁻⁴, the difference in SNR between the ideal channel, i.e., where perfect knowledge of the channel state is assumed, and the ML channel estimator is about 2.3 dB for both one and two antenna receiver systems. The LMMSE estimator, on the other hand, achieves ideal-channel error probability for the single antenna receiver and about 0.5 dB for the two antenna receiver.

Referring to FIG. 6, there is shown a comparison in terms of BER between the optimal power allocation scheme of the present invention and that of the prior art. The comparison is made in both one and two antenna receivers with the CM based data-bearer and pilot matrices applied. It is noteworthy that the two power allocation schemes are quite close at BER=10⁻⁴, resulting from the very small difference in allocated power between the two strategies in that region, as illustrated in FIG. 7.

In nonquasi-static fading channels, the channel coefficient matrix H(t) is not constant over a ST symbol block. In the demonstrations that follow, the channel state information H(t) changes symmetrically twice over one ST symbol block.

The single antenna receiver operating in nonquasi-static fading conditions under the present invention is illustrated in FIG. 8. The fading dynamic is illustrated for fd*T_(s)=0.0021 (slow fading), 0.0165, 0.0142 and 0.0741 (fast fading). It is particularly noteworthy that the CM based matrices provide lower MSE than either of the TM and STBC matrix structures. The difference is quite apparent in the higher SNR regions.

The BERs of the single antenna receiver pilot-embedded systems in the previously defined nonquasi-static fading are illustrated in FIG. 9. It is to be noted that when the fd*T_(s) is small, all three matrix structures produce similar results. However, when the Doppler shift increases, the CM based embedding structure provides much better detection than either of the TM and STBC structures.

FIGS. 10 and 11 illustrate the scenarios of FIGS. 8 and 9, but where two receiver antennas are deployed. Again, the CM based embedding system provides the best results in terms of both MSE of channel estimation and BER of data detection.

The descriptions above are intended to illustrate possible implementations of the present invention and are not restrictive. Many variations, modifications and alternatives will become apparent to the skilled artisan upon review of this disclosure. For example, components equivalent to those shown and described may be substituted therefor, elements and methods individually described may be combined, and elements described as discrete may be distributed across many components. The scope of the invention should therefore be determined not with reference to the description above, but with reference to the appended Claims, along with their full range of equivalents. 

1. A method for data communication comprising the steps of: providing data symbols at a transmitter; adding to each of said data symbols pilot data to form pilot-embedded data symbols; transmitting at least one of said pilot-embedded symbols from a transmitting antenna defining one end of a data channel; receiving at least one of said pilot-embedded data symbols at a receiving antenna defining an opposite end of the data channel; estimating from said received pilot-embedded data symbols at least one channel state coefficient indicative of a characteristic of the data channel; and recovering said data symbols from said received pilot-embedded data symbols using said estimated channel state coefficient.
 2. The method for data communication as recited in claim 1 further including the steps of: assembling a plurality of said data symbols prior to said pilot data adding step; modulating said assembled plurality of data symbols with a predetermined data pattern prior to said pilot data adding step to form a second plurality of data symbols; and adding said pilot data to each of said second plurality of data symbols to form said pilot-embedded data symbols.
 3. The method for data communication as recited in claim 2 further including the step of selecting said predetermined data pattern and said pilot data so that multiplication of one by the other results in extinction of both.
 4. The method for data communication as recited in claim 2 further including the steps of: allocating respective fractions of a fixed amount of power for transmission of said pilot-embedded data symbols to each of said modulated data symbols and said pilot data; and scaling by a respective scaling factor each of said predetermined data pattern and said pilot data in accordance with said power allocation.
 5. The method for data communication as recited in claim 4, where the power allocating step includes the steps of: allocating said fraction of power to said pilot data so as to minimize a probability of error upper bound of a mismatch between said estimated channel state coefficient and perfect knowledge of said characteristic of the data channel; and allocating the remaining fraction of power to said modulated data symbols.
 6. The method for data communication as recited in claim 2, where said channel state estimating step includes the steps of: estimating said channel state coefficient from said received pilot-embedded data symbols by a first estimation and said predetermined data pattern; and updating said estimated channel state coefficient by a second estimation.
 7. A method for data communication comprising the steps of: forming a block codeword from a sequence of data symbols; modulating said codeword with a plurality of data bearing coefficients; adding to each symbol in said modulated codeword a value from a plurality of pilot values to form a pilot-embedded codeword; transmitting said pilot-embedded codeword; receiving said pilot-embedded codeword at a receiver; estimating from said received pilot-embedded codeword at least one channel state coefficient indicative of a characteristic of a corresponding data channel; and recovering said sequence of data symbols from said received pilot-embedded codeword by said estimated channel state coefficient.
 8. The method for data communication as recited in claim 7 further including the steps of: providing a first plurality of antennas to the transmitter, each defining one end of a corresponding data channel; providing a second plurality of antennas to the receiver, each defining an opposite end of a corresponding data channel; and estimating in said channel state estimating step a channel state coefficient for all data channels defined by said first plurality of antennas and said second plurality of antennas.
 9. The method for data communication as recited in claim 7 further including the step of selecting said data bearing coefficients and said pilot values such that when arranged to matrices consistent with modulation of and addition to said codeword by matrix operations, matrix multiplication of one of said matrices by the transpose of the other results in a null matrix.
 10. The method for data communication as recited in claim 7 further including the steps of: allocating respective fractions of a fixed amount of power for transmission of said pilot-embedded codeword to each of said modulated codeword and said plurality of pilot values; and scaling by a respective scaling factor each of said plurality of data bearing coefficients and said plurality of pilot values in accordance with said power allocation.
 11. The method for data communication as recited in claim 10, where the power allocating step includes the steps of: allocating said fraction of power to said pilot data so as to minimize a probability of error upper bound of a mismatch between said estimated channel state coefficient and perfect knowledge of said characteristic of the data channel; and allocating the remaining fraction of power to said modulated data symbols.
 12. The method for data communication as recited in claim 7, where said channel state estimating step includes the steps of: estimating said channel state coefficient from said received pilot-embedded codeword by a first estimation and said predetermined data bearing coefficients; and updating said estimated channel state coefficient by a second estimation.
 13. The method for data communication as recited in claim 12, where said channel state information estimating step includes the steps of: providing as said first estimation a maximum-likelihood estimation of said channel state coefficient; and providing as said second estimation a linear minimum mean-square error estimation of said channel state coefficient given said maximum likelihood estimation of said channel state coefficient.
 14. The method for data communication as recited in claim 7, where said block codeword forming step includes the step of forming a space-time block codeword as said block codeword.
 15. The method for data communication as recited in claim 14 further including the step of forming a vector from symbols of said received pilot-embedded space-time codeword prior to said channel state information estimating step.
 16. A system for data communication comprising: a data encoder encoding data received at an input thereof into data symbols produced at an output thereof; a pilot embedder coupled to said data encoder and adding pilot data to said data symbols to produce pilot-embedded data symbols at an output thereof; a transmitter coupled to said pilot embedder at an input thereof and transmitting said pilot-embedded data symbols over a plurality of time slots such that said pilot data is transmitted in each of said time slots; a receiver coupled to said transmitter via at least one data channel, said receiver receiving through said data channel said pilot-embedded data symbols as modified by a characteristic of said corresponding data channel; a channel estimator coupled to said receiver and estimating from said pilot data added to each of said data symbols said characteristic of said corresponding data channel for each of said pilot-embedded symbols received; a data detector coupled to said channel estimator and recovering said data symbols from said pilot-embedded symbols in accordance with said estimated characteristic to produce at an output thereof estimated data symbols; and a data decoder coupled to said data detector and decoding said estimated data symbols in a manner complementary to said data encoder to reproduce said data.
 17. The data communication system as recited in claim 16, wherein said pilot embedder modulates said data symbols prior to adding said pilot data thereto.
 18. The data communication system as recited in claim 17, wherein said pilot embedder allocates power between said data symbols and said pilot data in accordance with predetermined criteria prior to said modulation of said data symbols.
 19. The data communication system as recited in claim 16, wherein said channel estimator performs a first estimation of said channel state and a second estimation of said channel state based on said first estimation.
 20. The data communication system as recited in claim 16, wherein said data encoder is a space-time block encoder. 